當你要檢查本機或遠端 server 上正在執行的程序,可以使用 Tasklist 命令列指令。透過他,您可以:
取得正在執行的程序 ID、狀態,和其他與程序有關的資訊。
查看正在執行的程序與服務設定之間的關係。
查看正在執行的程序,所使用到的 DLL 列表。
使用過濾器來包括或排除來自 Tasklist 命令所查詢的程序。
在本機上,要檢視執行中的程序,只要輸入下面的指令就可以了:
tasklist
如果是遠端的話,語法如下:
tasklist /s <遠端的電腦名稱或 IP 位址> /u <[網域\]使用者帳號> [/p <密碼>]
[] 裡面的參數,代表可輸,也可不輸入。
例如下面的指令是要使用 dc1\alexc 的帳號,查詢 192.168.100.100 上,正在執行的程序相關資訊:
tasklist /s 192.168.100.100 /u dc1\alexc
執行的部分結果如下:
映像名稱                       PID 工作階段名稱      工作階段 #    RAM使用量
========================= ======== ================ =========== ============
System Idle Process              0 Services                   0         24 K
System                           4 Services                   0      6,520 K
smss.exe                       308 Services                   0      1,192 K
csrss.exe                      488 Services                   0      6,196 K
csrss.exe                      580 Console                    1     54,112 K
wininit.exe                    588 Services                   0      5,164 K
services.exe                   640 Services                   0     10,264 K
winlogon.exe                   672 Console                    1     12,932 K
lsass.exe                      684 Services                   0     16,088 K
lsm.exe                        692 Services                   0      6,316 K
可以看到結果排列得很整齊,原因是因為預設是用表格的方式來顯示,可以使用 /fo 參數來改變結果呈現的方式。
使用清單方式顯示:
tasklist /fo list
部分結果:
映像名稱:     System Idle Process
PID:          0
工作階段名稱: Services
工作階段 #:   0
RAM使用量:    24 K
映像名稱:     System
PID:          4
工作階段名稱: Services
工作階段 #:   0
RAM使用量:    6,520 K
映像名稱:     smss.exe
PID:          308
工作階段名稱: Services
工作階段 #:   0
RAM使用量:    1,192 K
使用逗號分隔方式顯示:
tasklist /fo csv
部分結果:
"映像名稱","PID","工作階段名稱","工作階段 #","RAM使用量"
"System Idle Process","0","Services","0","24 K"
"System","4","Services","0","6,520 K"
"smss.exe","308","Services","0","1,192 K"